package cn.liberals.basic.mapper;

import cn.liberals.basic.query.BaseQuery;
import cn.liberals.org.domain.Shop;
import cn.liberals.org.query.ShopQuery;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface BaseMapper<T> {

    // 查询所有
    List<T> loadAll();

    // 根据id
    T loadById(Long id);

    // 根据Id删除
    void remove(Long id);

    // 新增
    void save(T t);

    // 根据Id修改
    void update(T t);

    // 高级+分页查询
    List<T> queryData(BaseQuery baseQuery);

    // 查询总条数
    Integer queryCount(BaseQuery baseQuery);

    // 批量删除
    void batchDel(List<Long> ids);


    List<T> queryPage(BaseQuery baseQuery);
}
